1
00:00:10,150 --> 00:00:17,050
Let us conclude our Web application section by having a look on the Web application countermeasures

2
00:00:17,050 --> 00:00:20,080
that how you should prevent such attacks.

3
00:00:21,100 --> 00:00:29,350
Let us see the force that is broken authentication and session management for this use SSL that is sigatoka

4
00:00:29,410 --> 00:00:35,980
clear for authenticated, a part of the application verify whether all the user's identities and credentials

5
00:00:35,980 --> 00:00:39,550
are stored in hashed form that is used hashing and cryptography.

6
00:00:39,930 --> 00:00:45,150
I never submit session data is a part of it or both requests never do that.

7
00:00:45,610 --> 00:00:52,420
The next is XML entity that is a word processing XML input containing a reference to the external entity.

8
00:00:52,870 --> 00:01:00,190
Then XML unmarred should be configured securely past the document with the securely configured parser.

9
00:01:00,760 --> 00:01:08,170
Next, sensitive data exposure do not create or use weak cryptographic algorithms as they may result

10
00:01:08,170 --> 00:01:15,280
in sensitive data exposure, then generate encryption keys off-line and store them securely and ensure

11
00:01:15,280 --> 00:01:21,730
that the encrypted data are stored on the disk is not easy to decrypt and therefore brute force attacks

12
00:01:21,730 --> 00:01:23,500
won't work in this case.

13
00:01:24,110 --> 00:01:31,510
The next is broken access control that is busy now perform access control checks before redirecting

14
00:01:31,510 --> 00:01:37,480
the authorized user to request a resource check whether it is only legitimate user who is trying to

15
00:01:37,480 --> 00:01:44,890
access the user requested resource avoid using insecure items to prevent a tiger from getting it, then

16
00:01:44,890 --> 00:01:46,900
provides session timeout mechanism.

17
00:01:46,900 --> 00:01:55,180
If a user is not active for, let's say, 30 to 40 seconds, you can adjust a timeout decision and log

18
00:01:55,180 --> 00:02:01,960
out the user forcefully and then limit the permissions to authorized users from misuse.

19
00:02:04,050 --> 00:02:09,720
The next is how you can prevent a scale injection attacks limit the length of the user input, as we

20
00:02:09,720 --> 00:02:18,660
have seen, that if you change the input from 10 to 15 or 100 and then only user can input a string

21
00:02:18,660 --> 00:02:25,080
or a big function, but if you limit that only or as attacks can be prevented, then use custom error

22
00:02:25,080 --> 00:02:31,980
messages, do not disclose any information through errors, just give an error that that's a error that

23
00:02:32,400 --> 00:02:38,820
you do not have to display anything else, then monitor database traffic using ideas, firewalls and

24
00:02:39,150 --> 00:02:43,500
other application firewalls, disable commands like expectation.

25
00:02:43,920 --> 00:02:49,490
If you want to read more about this, you can always go to the books that you have attached for Web

26
00:02:49,500 --> 00:02:54,780
application resources, then isolate a database server and a web server also.

27
00:02:55,110 --> 00:03:01,380
And the next is filing a tax that is file upload, strongly worded user input.

28
00:03:01,650 --> 00:03:06,060
Consider implementing a jail route, then disable a love.

29
00:03:06,060 --> 00:03:10,680
You are left open and allow your URL in BHP, not Ironi.

30
00:03:10,680 --> 00:03:16,110
We have seen this while installing the Linux in time when the of application.

31
00:03:16,110 --> 00:03:21,810
If you do not recall, please go to that lecture in Section two, setting up the penetration testing

32
00:03:21,810 --> 00:03:26,760
lab, then ensure that all files and streams functions are carefully vetted.

33
00:03:27,270 --> 00:03:30,960
Do not allow any random file to be inputted.

34
00:03:31,560 --> 00:03:38,250
The next is command injection flows, perform again input validation, escape dangerous characters.

35
00:03:40,130 --> 00:03:46,190
Use language specific libraries that avoid problems due to shell commands, perform input and output

36
00:03:46,190 --> 00:03:51,740
encoding, and use a safe API which avoids the use of interpretor entirely.

37
00:03:52,370 --> 00:03:56,060
Then the next is using components with known vulnerabilities.

38
00:03:56,060 --> 00:04:03,250
How you can avoid that you can avoid by regularly checking the versions of both client side and so rules

39
00:04:03,260 --> 00:04:09,710
or components and their dependencies then continuously monitor sources like National Vulnerability Database

40
00:04:09,950 --> 00:04:16,430
for vulnerabilities in your components, apply security patches, regularly scan the components with

41
00:04:16,430 --> 00:04:23,660
security scanners, frequently enforce security policies and best practices for component use.

42
00:04:24,590 --> 00:04:32,390
And the second last is cross site request forgery attack here log of immediately after using our application

43
00:04:32,390 --> 00:04:33,650
and clear the history.

44
00:04:33,950 --> 00:04:39,800
We have seen that if you log off and if you delete all the data after the user has created the browser,

45
00:04:40,220 --> 00:04:43,310
attackers cannot use the site of attack.

46
00:04:43,620 --> 00:04:49,430
Then do not allow your browser and websites to save login details, which is a bad practice, and also

47
00:04:49,430 --> 00:04:53,690
check the header of processing a post.

48
00:04:53,840 --> 00:04:55,190
Another type of request.

49
00:04:55,190 --> 00:05:02,300
And the last and important is kookier parameter time, putting the not stored plaintext or weakly encrypted

50
00:05:02,300 --> 00:05:06,260
passwords in a cookie that is not allowed and that is always a bad practice.

51
00:05:06,620 --> 00:05:07,700
Implement cookies.

52
00:05:07,700 --> 00:05:08,390
Timeout.

53
00:05:08,780 --> 00:05:09,170
Let's see.

54
00:05:09,170 --> 00:05:15,150
After four to five days, if a user hasn't visited the website, you can delete the cookie and whenever

55
00:05:15,150 --> 00:05:21,140
a user tries to log in again, you can ask for more security questions to ensure that the same user

56
00:05:21,140 --> 00:05:25,010
is logging and finally make logged functions available.

57
00:05:25,820 --> 00:05:33,450
Insist the user to log out before closing a browser and using all this with the application attacks

58
00:05:33,590 --> 00:05:34,670
can be prevented.

59
00:05:34,970 --> 00:05:42,560
Uh, so in the next section onwards we are going to start the DENIAL-OF-SERVICE section that is the

60
00:05:42,560 --> 00:05:43,070
DOS.
